package org.jeecg.modules.jxc.homepage.service;

import com.baomidou.mybatisplus.extension.service.IService;
import org.jeecg.modules.jxc.baseData.entity.JxcGoodsBo;
import org.jeecg.modules.jxc.baseData.vo.VO;
import org.jeecg.modules.jxc.homepage.config.PageResult;
import org.jeecg.modules.jxc.homepage.entity.JxcGoods;

import java.util.List;
import java.util.Map;


/**
 * @Description: jxc_goods
 * @Author: jeecg-boot
 * @Date:   2021-12-20
 * @Version: V1.0
 */
public interface IJxcGoodsService extends IService<JxcGoods> {

    PageResult<JxcGoods> homePageList(Integer goodsTypeId, String goodsNameOrCode);

    /**
     * @description: 查询有库存商品-jcj
     * @param key
     * @param pageNo
     * @param pageSize
     * @return org.jeecg.modules.jxc.baseData.vo.VO<org.jeecg.modules.jxc.baseData.entity.JxcGoodsBo>
     * @exception
     */
    VO<JxcGoodsBo> queryGoodsList(String key, Integer pageNo, Integer pageSize);

    /**
     * @description: 查询无库存商品-jcj
     * @param key
     * @param pageNo
     * @param pageSize
     * @return org.jeecg.modules.jxc.baseData.vo.VO<org.jeecg.modules.jxc.baseData.entity.JxcGoodsBo>
     * @exception
     */
    VO<JxcGoodsBo> queryNullGoodsList(String key, Integer pageNo, Integer pageSize);

    /**
     * @description: 删除商品库存-jcj
     * @param id
     * @return void
     * @exception
     */
    void changeGoodsNumToNull(Integer id);
    /***
    * @description: 查询当前库存小于最小库存的商品
    * @param
    * @return java.util.List<java.util.Map<java.lang.String,java.lang.Object>>
    * @exception
    */
    List<Map<String, Object>> queryGoods();
    /**
     * 库存报警
     */
    Map<String, JxcGoods> findStockLimit();

}
